For an interface between a host and a data storage device, for example, standards have been proposed which are referred to as SCSI over PCI Express (SOP) and which comprise PCI Express (registered trade mark; hereinafter referred to as PCIe) standards to which SCSI standard are mapped.
Such interface standards are characterized in that a host side can comprise a plurality of queues arranged therein and which allows queuing of request information for requesting processing of commands, tasks, and the like and response information on responses from the storage device. Moreover, interface control specifications have been established which allow the storage device side to control the plurality of queues.
The request information and response information stored in the plurality of queues are sometimes referred to as information units (IUs). The request information and response information are sometimes referred to as request IUs and response IUs, respectively. The information units may be stored in one element or separately in a plurality of elements. The element is the unit of storage for the storage of an information unit in a queue.
The host side, for example, stores a command in a request IU and issues the request IU to the storage device side. The storage device side extracts the request IU and carries out a command process. The information unit can store not only a command and a task but also a list of addresses (Scatter Gather List [SGL]) in a memory space secured on the host side. By acquiring an SGL from the information unit, the storage device side can access an address in the memory space on the host side which is specified by the SGL. Thus, the storage device side can acquire data distributed in the memory space on the host side or transfer data to the memory space.
The storage device side holds, in a table, all information contained in the information unit issued by the host side until the storage device side returns a response. The information may include an SGL, and thus, the table needs to have a large capacity. Thus, desirably, table management is achieved so that the table can be efficiently used, allowing the capacity of the table to be reduced to the minimum necessary.